/**
 * @file    utils.cpp
 * @author  wuhui1536@gmail.com
 * @date    2025-02-19
 * @brief   工具类 - 实现文件
 *
 * @details
 * 本文件包含多个工具函数的实现，用于支持项目中各种常见的操作。
 * 这些工具函数包括字符串处理、文件操作、数据转换等常用功能，旨在提高代码复用性和可维护性。
 * 每个函数都有独立的功能，能在不同的模块中被调用，简化开发工作。
 * 
 * 文件中的函数应避免与其他模块的功能发生冲突，并保持良好的代码规范。
 * 
 * @note
 * 1. 本文件中所有函数已尽量做到通用性，未来如有需要扩展的功能，请在此文件中新增函数。
 * 2. 请确保对所有新加入的函数进行充分的单元测试。
 * 
 */


#include "utils.h"

string Tool::readJsonFile(const string &filename) {
    ifstream file(filename.c_str(), ios::in);
    if (!file.is_open()) {
        cerr << "无法打开 JSON 文件: " << filename << endl;
        return "";
    }
    stringstream buffer;
    buffer << file.rdbuf();
    file.close();
    return buffer.str();
}

string Tool::toLowerCase(const string &input) {
    string output = input;
    for (size_t i = 0; i < output.size(); i++) {
        output[i] = static_cast<char>(tolower(static_cast<unsigned char>(output[i])));
    }
    return output;
}